1. Field of the Invention
The present invention relates to a method of recognizing an available channel in an IEEE 802.15.4 protocol CSMA/CA mechanism. More particularly, the present invention relates to a method of recognizing an available channel in an IEEE 802.15.4 protocol CSMA/CA mechanism, in which a Random Backoff Time extension algorithm is used so as to simply and yet effectively improve performance of slotted CSMA/CA.
2. Description of the Prior Art
IEEE 802.15.4 is a network designed for low-cost, ultra low power, short range wireless communication, and has been designed for supporting a low power/low cost application to which IEEE 802.15.3 for a high-rate network suitable for a multimedia application, and IEEE 802.15.1 for a Bluetooth requiring a voice-grade QoS cannot be employed.
An IEEE 802.15.4 network includes an FFD (Full Function Device) and an RFD (Reduced Function Device). The FFD has all MAC functions provided by IEEE 802.15.4, and thus can operate as a PAN coordinator for managing a PAN and a network device. The RFD, a device in which only some of MAC functions of the IEEE 802.15.4 are realized, cannot play a role of a PAN coordinator and is used as only a network device. The RFD is capable of communicating with only a PAN coordinator or a coordinator. The FFD and RFD are used to configure a star topology or a peer-to-peer topology, and in such a topology, one of a beacon-enabled mode and a non beacon-enabled mode is used to carry out communication between terminals.
In a conventional technology, there was provided a channel preemption communication method according to IEEE 802.15.4 (Laid-Open Publication No: 10-2006-0083654, Jul. 21, 2006), in which, during IEEE 802.15.4 based communication of a coordinator and plural network devices, a certain network device from among the plural network devices can continuously communicate with the coordinator without communication disconnection by preempting a certain channel. The conventional method includes the steps of: generating, by the coordinator, a beacon including a channel preemption field in which certain channel preemption by a certain network device is recorded; transmitting the beacon including the channel preemption field to the plural network devices by the coordinator; and continuously carrying out communication of the channel preempting network device from among the plural network devices which have received the beacon, the channel preempting network device being recorded in the channel preemption field of the beacon, with the coordinator by preempting the certain channel. For this, a conventional structure of a beacon frame is required to be modified, which results in reduction of network throughput, and power consumption of a terminal.
Also, in “MAC Throughput Limit Analysis of Slotted CSMA/CA in IEEE 802.15.4 WPAN”, an Embedded Markov chain was used to analyze MAC throughput of slotted CSMA/CA (carrier sense multiple access with collision avoidance) in a saturated state, and the analysis was verified by simulation. Also, in “Priority-based delay mitigation for event-monitoring IEEE 802.15.4 LR-WPANs”, based on the reason that CCA (Clear Channel Assessment) is successively performed twice in slotted CSMA/CA, FRT(Frame Tailoring) and PRT (Priority Toning) were suggested to improve performance of slotted CSMA/CA from the standpoint of packet delay. However, the conventional technology has a disadvantage in that the FRT is required to be implemented in hardware, and is impossible to implement in a current chipset.
Hereinafter, a conventional technology will be described.
FIG. 1 illustrates an IEEE 802.15.4 network topology. In a beacon-enabled mode of an IEEE 802.15.4 MAC protocol, a superframe managed by a PAN coordinator is defined. The superframe has a range determined by a beacon message periodically transmitted by the PAN coordinator, and is divided into an active period and an inactive period. The active period is divided into 16 equally spaced time slots, and a first time slot starts following the end of a beacon frame. The active period is divided into a CAP (Contention Access Period) and a CFP (Contention Free Period), and the CFP includes GTSs (Guaranteed Time Slots). In the beacon-enabled mode, during the CAP of the superframe, respective terminals compete with each other to access a channel by using a slotted CSMA/CA algorithm. The CFP includes GTSs (Guaranteed Time Slots), and each GTS is allocated to a certain network terminal so as to transmit data sensitive to time delay.
FIG. 2 illustrates a structure of a superframe in an IEEE 802.15.4 beacon-enabled mode. Each terminal tries to access a channel by using three counters (NB, BE and CW) in a CAP. NB indicates the number of times a terminal has tried to access a channel in order to transmit one frame; BE (backoff exponent) is for determining a random backoff time; and CW (connection window) is a counter for CCA, which is performed before frame transmission.
In the case of slotted CSMA/CA, a terminal having data to be transmitted initializes values of NB and CW as 0 and 2, respectively. Before trying to access a channel, a terminal waits for a unit backoff time corresponding to a randomly selected integer within a range of 0˜2BE−1, and then performs CCA in order to determine whether the channel is busy or idle.
If the channel is busy, the terminal initializes CW, increases NB and BE by 1, respectively, and determines whether NB is greater than macMaxCSMABackoffs or not. macMaxCSMABackoffs is set as 4. If NB is greater than macMaxCSMABackoffs, the terminal fails to access the channel.
If the channel is idle, the terminal decreases CW by 1, and secondly performs CCA. After secondly performing the CCA, if the channel is idle, the terminal decreases CW by 1 again. Herein, if CW is 0, the terminal succeeds in channel access. When the terminal fails in channel access, or collision occurs by CCA performances of competing terminals in a common slot, three re-transmission opportunities are given.
FIG. 3 illustrates a flow chart showing operation in conventional slotted CSMA/CA according to IEEE 802.15.4. FIG. 4 illustrates an example of channel access in conventional slotted CSMA/CA according to IEEE 802.15.4.
A terminal having data to be transmitted initializes NB and CW as 0 and 2, respectively, in step s301. The terminal checks battery life extension in step s302, and then, in step s303, initializes BE as macMinBE when battery life extension is not used, or in step s304, sets BE as the lesser of 2 and macMinBE when battery life extension is used. After locating a backoff period boundary in step s305, the terminal waits for a unit backoff period corresponding to a randomly selected integer within a range of 0˜2BE−1 in step s306 before an attempt to access a channel is made, and then performs CCA in step s307 in order to determine whether the channel is busy or idle. The terminal, in step s308, determines whether the channel is busy or idle through the CCA, and then, in step s309, decreases CW by 1 when the channel is idle, and determines whether the CCA is second CCA or not in step s310.
If the CCA is not second CCA, the procedure returns back to s307. After secondly performing CCA, the terminal decreases CW by 1 again when the channel is idle, and then succeeds in channel access when CW is 0 through steps s307, s308, s309, s310, and s311. If the channel is busy, the terminal sets CW as 2, increases NB by 1, and sets BE as min(BE+1, amaxBE) in step s312, and then determines whether NB is greater than macMaxCSMABackoffs or not in step s313. When NB is greater in step s313, channel access is unsuccessful in step s314, or when NB is not greater, the terminal proceeds to step s306.
In slotted CSMA/CA, a terminal having a frame to be transmitted performs CCA before trying to transmit the frame, and transmits the frame when two successive CCA performances are successful. The reason CCA is performed twice is to prevent a data frame to be transmitted by a terminal from colliding with an ACK frame, the ACK frame being received by another terminal when data frame transmission is successful. Success in the first CCA and failure in the second CCA mean that in a slot prior to performance of the second CCA, a channel is idle, and in a slot where the second CCA is performed, a channel is busy. This indicates that in the slot where the second CCA is performed, another terminal has started transmission.
FIG. 5 illustrates occurrence of collision between frames and failure of a terminal in second CCA. According to a conventional slotted CSMA/CA mechanism, when terminals perform first CCA in a common slot, collision between frames transmitted by the terminals occurs. Also, in the case of success in first CCA and failure in second CCA, there is a problem in that energy consumption is caused by performance of the second CCA even though channel access is unsuccessful.
FIG. 6 illustrates throughput of slotted CSMA/CA with an increase of the number of terminals sharing media in a saturated state with a 2.4 GHz bandwidth.